24-Dec-1996
Jeremy Moskovich
E-Mail: Jeremy@vms.huji.ac.il

                                        BeShow release Beta 6
 
Copyright 1996 Jeremy Moskovich

   See the "History" section at the end of this file, for more information on
New features and bug fixes in this release.

Sections in this document:
- What is it
- Main Features
- Where Do I Send Comments and Bug Reports?
- How Do I Unpack the Archive?
- How Do I Use It?
- FAQ
- Known Limitations
- History
- Thanks To
- Very Special Thanks To
- Legal Stuff

--------------------------------------------------------------------------------

What Is It?:
	BeShow is a fast, free image viewer with basic image manipulation and export
features.  It utilizes the datatypes library for opening and saving image files so you can
open and save in all file formats for which you have appropriate datatypes handlers.
	
Main Features:
- Uses the Datatypes library for opening and saving Image files.
- support for both 32 bit & 8 bit mode screen modes with quality dithering.
- Works from either the GUI or the command line.
- support for scaling images to full screen with very high quality scaling algorithms.
- full supports drag & drop, and concurrent opening of multiple image files.
- Basic SlideShow capabilities.
- Ability to Scale, Crop, Flip, Blur, Mirror images.

Where Do I Send Comments and <gasp> Bug Reports?
	First check the FAQ and Known Limitations section to see if they contain
an answer, if not send a mail them to Jeremy@vms.huji.ac.il.


How do I Unpack The Archive?
	copy the .tar.gz file onto your BeBox, open the terminal, go into the directory
with the .tar.gz file in it, type:

gzip -dvc BeShowB6.tar.gz > BeShowB6.tar
tar xfv BeShowB6.tar
setfile BeShow

How Do I Use It?:

To open a file with BeShow:
	Double click on the BeShow application to open it, and then either:
		Drag any file from the browser onto the "Launch" window,
	or 
	    Select "Open..." from BeShow's application menu.

To save a file with BeShow:
	1)Open an image in BeShow
	2)Press ALT-S or select "Save As.." from the Image window's file menu
	3)In the ensuing dialogue, select the format and options under which 
		to save the image.
	4)Press the "Save" button.
	5)Use the Save Panel that appears to navigate to where you want to save the image
		and press the "Save" button.
	6)Rejoice as your file is saved to disk...

To scale an image to the screen:
	After opening an image file press:
		either the SPACE BAR to scale the image proportionally
	 or 
		SHIFT - SPACE BAR to scale the image non-proportionally
		
	To return the image to it's original size press the SPACE BAR again.
	
To use BeShow to extract a portion of an image for use in a C program:
	1)Open an image in BeShow
	2)Select any area in the image.
	3)Select "Copy As C Structure" from the "Geek" Menu.
	4)Open any text editing application (such as Edit)
	5)Open a new blank document.
	6)Select "Paste" from the "Edit" menu
	7)Save the file, to disk.
	
To Run a SlideShow:
	Press either the left or right arrow keys (This also works in full screen mode!), 
if the image you are currently on is the first or last image in the folder and you 
try to flip past it, BeShow will beep.

FAQ:
Q. I get weird errors when I try to open the BeShow application, whats wrong?

A. You have to install the datatype library in order for BeShow to run, BeShow
   relies on this library to open and save images and can't run without it being
   present.  The datatypes library is available in the "datatypes" directory in
   the BeShow archive.
   
Q. I can't open certain image files with this version of BeShow that earlier 
	versions of BeShow had no trouble with.
   
A. BeShow now works with the datatype library, to open an image in a specific format
     you need to have a datatype handler that supports that format.  You can find
     a collection of datatype handlers at: ftp://ftp.be.com/pub/contrib/libraries/

Q. Why Does My Disk Go Hay-Wire When Opening Several Images in BeShow?

A. BeShow currently makes no attempt to cache image bitmaps to disk, so everything
	is held in memory.  Fixing this is pretty high on my priority list.
	
Q. Scaling 32 Bit Image Files Looks Great, But Scaling 8 Bit Files Doesn't Look So Hot, Why?

A. By default BeShow uses a much lower quality (but *much* faster) scaling
	algorithm for 8 bit images.  You can opt to always use the high quality algorithm
	by selecting the appropriate option from BeShow's application menu.

Fun Things to Do With BeShow:

1)Try dragging 20-30 large image files on to BeShow at once on a 16MB machine
	and give your VM system a nice workout.
2)Open an image in BeShow and hold down ALT-1 (blur), then watch the image
	fade into oblivion.
3)Start playing one of the sound files in the "Optional" folder of the BeOS CD, 
   and while its running, open a large image file in BeShow.
4)Play with the various Mirror and Flip commands to discover the hidden messages 
	stored in your image files.
    
Future Plans (in order of importance):
- Progress dialogues and progressive image display.
- User preferences dialogue.
- Smart VM system for storing image bitmaps.
- complete rework of user interface.

Known Limitations:
- When flipping through a directory of images with the arrow keys the scroll
   bars and window sizes sometimes don't update correctly, or become invisible.
     This is due to a bug in BWindow::ResizeWindow() which under certain
   circumstances doesn't  resize the window to the requested size.

History:

Release 6 24-Dec-1996
New Features:
- Now saves images through the datatypes library.
- Added "Quit" command to each window's File menu.
- Added Scale and Crop options.
- much improved fullscreen slideshow.

Bugs Fixed in this version:
- Crashing bug in Smooth command fixed.

Release 5 28-Nov-1996
New Features:
- Rudimentary Slideshow capabilities with left and right arrow buttons (works in
  full screen mode as well).
- Support for the datatypes library for opening image files.
- Support for command line operations including setting the number of threads for
   use when opening images with the -t option.
- Keyboard shortcut for "Convert image to C Structure".
- Fixed cosmetic bugs in Save dialogue - backgrounds of all buttons now grey 
  instead of white.
- Hopefully fixed crash when opening save-as dialogue (if this still happens to
  someone please send me mail!).
- No longer displays annoying alert when trying to open a non-image file.
- Launch window now opens in all workspaces at once.
- Fixed bug where large images wouldn't be centered correctly in fullscreen mode.
- Menu bar now correct height (with support for 18 point font).
- Shift drag an image file onto a window for it to open in that window.
- ImageWindow now has zoom box, and Launch pad doesn't...
- Snazzy new Icons.

Release 4 15-Jul-1996

New Features:
- Save As panel with support for exporting BMP and Be Screendumps.
- High quality 32->8bit dithering algorithm.
- Filtered image rescaling algorithm.
- "effects" menu with flip, mirror, and blur commands.
- Support for drag and drop of selection ala ImageViewer
- Support for CCIT, JPEG, and ZIP compressed TIFF files.
- Windows can now be resized.
- BeShow now quits when no windows are open.
- Added preference for changing the type/creator of all files dropped on BeShow.
- Added option to open all images dropped on BeShow in full-screen view automatically.
- Added option to use filtered image scaling on 8 bit Images 
	("Always Do High Quality Scale" in the application menu).
- PNG Images now open up to 300% faster (I don't relly on libPNG's dithering
	capabilities anymore).
- Added Help Window.

General:
- Flipped usage of keyboard shortcuts for image scaling.
- BeShow now makes extensive use of Areas.

Bug Fixes:
- "Copy Selection As C Structure" now works as advertised.
- Fixed crashes when opening multiple image files at once.
- Now scales 32 bit images correctly.
- No longer crashes when opening certain corrupted JPEG images.
- Now correctly handles gray-scale JPEG and TIFF images.
- Fixed white border around images scaled to the screen.
- Fixed crashes when opening various corrupt TIFF images.
- Fixed bug where 8 bit images would show blue instead of black.
- No longer strips alpha channel from 32 bit PNGs.
- 24 bit BMP images now open correctly.
- No longer cuts the bottom few lines off 8 bit BMPs.
- BeShow is no longer marked as multiple launch.


Release 3 22-May-1996

General:
- Changed name from Beach to BeShow

New Features:
- Full support for 32 bit & 8 bit displays
- Added support for PNG, BMP, TIFF, PCX, TARGA, and Be Screendump formats.
- Added Menu Bar in each window
- Preliminary support for the clipboard
- Added selection rectangle
- Added "Copy Selection as C Structure" command - If your a programmer, you'll really
  Like this feature...
- Changed shortcuts for scaling image to screen - instead of using the space bar &
  Enter keys.  I now use "Space_Bar" and "Shift - Space_Bar" to scale proportionally
  & non proportionally...
- Closing the "Launch Pad" doesn't quit the application any more
- Added menu item (in application menu) for hiding the launch pad.
- All new icons
- Compiled natively for dr7

Bugs fixed in release B3:
- fixed some serious memory leaks.
- fixed bug where window was 1 pixel larger than image it was displaying (white border)
- fixed crashes when trying to open corrupted GIF & JPEG files

Known bugs in this release:
- PNG file opening isn't as fast as it should be.
- Opening large JPEG files in 32 bit mode takes a long time.  The screen buffer is
  getting stored in virtual memory and accessing it takes a long time...
- Scaling 32 bit bitMaps to screen doesn't work as it should

Release 2 31-March-1996:
	Added JPEG support, scrollbars for images larger than the screen, scaling
of an image to the size of the screen.  Changed internal architecture to
facilitate adding more Image formats.

Release 1 17-March-1996:
	After 3 nights of debugging, and 2 complete re-writes Beach
is finally ready for its first public release.  I've been 
experiencing a lot of strange bugs with the ImageWindow class
which went away miraculously on the last re-write... But it now
seems to work OK.

--------------------------------------------------------------
Thanks To (in no particular order):
	Eric Knight,
	Hubert Figuiere,
	Georges-Edouard Berenger,
	John Watte,
	Jimmy McKinney,
	Nadav Reuveni,
	Dima Michaelov,
	Oren Cohen

    All the people who spent the time to file bug reports and feature requests!

Very Special thanks to:
	John Watte - For the datatypes library and answering my questions.
	Simon Clarke - For his datatype handler development efforts and assistance.
	Zohar - for the icons!
	
Legal Stuff:
	I do not take responsibility for ANY damage - direct, indirect, or otherwise,
which may be incurred by BeShow.
	In the case of states in which such disclaimers do not apply, I hereby limit 
my liability in such matters to $1 US.

	I'm currently releasing BeShow as freeware, that means you
don't have to pay for it.  I only ask you to:
1)Not sell BeShow or otherwise distribute it for money.
2)Please distribute the program together with this readme!
3)If you stick BeShow on a CD-ROM, you are required to send me a copy.
